///**
// * Copyright (c) 2014,TravelSky. 
// * All Rights Reserved.
// * TravelSky CONFIDENTIAL
// * 
// * Project Name:util
// * Package Name:com.travelsky.ri.infra.util
// * File Name:RiApplicationContext.java
// * Date:2014-3-10 下午3:08:07
// * 
// */
//package com.share.util;
//
//import org.springframework.beans.BeansException;
//import org.springframework.context.ApplicationContext;
//import org.springframework.context.ApplicationContextAware;
//import org.springframework.context.support.ClassPathXmlApplicationContext;
//
///**
// * ClassName: RiApplicationContext <br/>
// * Description: TODO <br/>
// * Date: 2014-3-10 下午3:08:07 <br/>
// * <br/>
// * 
// * @author lihuafeng@travelsky.com(邮箱)
// * 
// *         修改记录
// * @version 产品版本信息 yyyy-mm-dd 姓名(邮箱) 修改信息<br/>
// * 
// */
//public class CodisApplicationContext implements ApplicationContextAware {
//    /**
//     * context,在web项目中由org.springframework.web.context.ContextLoaderListener进行设置
//     */
//    private static volatile ApplicationContext ctx;
//
//    @Override
//    public final void setApplicationContext(final ApplicationContext context) throws BeansException {
//        setContext(context);
//    }
//
//    private static void setContext(final ApplicationContext context) {
//    	ctx = context;
//    }
//
//    /**
//     * 获取ApplicationContext,如果不是由ContextLoaderListener设置，则需要加载配置文件创建
//     * 此处需双重检查，保证线程安全
//     * 
//     * @return ApplicationContext
//     */
//    public static ApplicationContext getContext() {
//        if (ctx == null) {
//            synchronized (CodisApplicationContext.class) {
//                if (ctx == null) {
//                	//生产上这句代码不会执行到，因为已经扫描过redis.xml。ctx一定不为null。
//                    ctx = new ClassPathXmlApplicationContext(new String[] { "redis.xml" });
//                }
//            }
//        }
//        return ctx;
//    }
//
//    /**
//     * <p>Title: getBean </p>
//     * <p>Description: getBean </p>
//     * @param name name
//     * @return Object
//     */
//    public static Object getBean(String name){
//        return getContext().getBean(name);
//    }
//}
